-- where let exercises
expr1l = let x = 3; y = 1000 in x * 3 + y
expr1w = x * 3 + y where x = 3; y = 1000
expr2l = let y = 10; x = 10 * 5 + y in x * 5
expr2w = x * 5 where x = 10 * 5 + y where y = 10
expr3l =
 let x = 7
     --y = negate x
     y = (- x)
     z = y * 10
 in z / x + y
expr3w = z / x + y
 where z = y * 10; y = negate x; x = 7
altexpr3w = z / x + y
 where z = y * 10
       y = negate x
       x = 7
bracket1n = 2 + 2 * 3 - 3
bracket1b = (2 + (2 * 3)) - 3
-- or more simply
-- bracket1b = 2 + (2 * 3) - 3
bracket2n = (^) 10 $ 1 + 1
bracket2b = ((^) 10) $ (1 + 1)
bracket3n = 2 ^ 2 * 4 ^ 5 + 1
bracket3b = ((2 ^ 2) * (4 ^ 5)) + 1
-- true
eq1 = print r
 where r =  1 + 1 == 2
-- true
eq2 = print r
 where r = 10 ^ 2 == 10 + 9 * 10
-- false
eq3 = print r
 where r = 400 - 37 == (-) 37 400
-- true
--lol broke
--eq4 = print r
-- where r = 100 `div` 3 == 100 / 3
-- false
eq5 = print r
 where r = 2 * 5 + 18 == 2 * (5 + 18)
